Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Various tracker module features #19

Merged
merged 3 commits into from
Nov 29, 2021
Merged

Conversation

LunaTheFoxgirl
Copy link
Collaborator

@LunaTheFoxgirl LunaTheFoxgirl commented Nov 29, 2021

This is a small untested change that adds the various tracker seeking/telling features I wanted in #15, it's still incomplete but supports most of it.

Only need to figure out how to calculate the sample length of an XM pattern, then it's fully done.

Currently here's how support looks

Feature XM MOD Description
countModulePatterns X X Gets total count of patterns in module (whether they're played or not)
getModuleLength X X Gets how many patterns that are in the order list, amount of patterns actually played.
rowsInPattern X X Gets how many rows that are in a specific pattern.
tellModulePattern X X Gets the id of the current pattern being played.
tellModuleRow X X Gets the current row being played.
samplesRemainingInPattern X* Gets the amount of samples left in the current playing pattern.
seekPosition (row+pattern) X X* Seeks to a specific row and pattern, setting tick to 0.

* = Untested

I've taken some reference from http://lclevy.free.fr/mo3/mod.txt when it comes to implementing samplesRemainingInPattern for MOD files.

@LunaTheFoxgirl
Copy link
Collaborator Author

Maybe a uniform naming scheme should be used for these module features, I'm open to suggestions.

@p0nce
Copy link
Contributor

p0nce commented Nov 29, 2021

LGTM.
That's pretty cool.
I think the names are more than allright.

More than OK with merging partial work in this repo.

@p0nce p0nce merged commit de3c47f into AuburnSounds:master Nov 29, 2021
@p0nce
Copy link
Contributor

p0nce commented Nov 29, 2021

My only suggestion would be maybe to add a isModule function to indicate support for such module-specific function. But, not very important.

@p0nce
Copy link
Contributor

p0nce commented Nov 29, 2021

I'm sorry perhaps you didn't intended this to be merged now?

@LunaTheFoxgirl
Copy link
Collaborator Author

It's okay I'll just make a PR later with the last stuff

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants